package com.moss.web;


import com.github.pagehelper.PageInfo;
import com.moss.common.core.BaseController;
import com.moss.common.domain.AjaxResult;
import com.moss.common.entity.SysCheckOrgEntity;
import com.moss.common.entity.SysSampleOrgEntity;
import com.moss.system.service.CheckOrgService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.validation.constraints.NotEmpty;
import java.util.List;

@RestController
@RequestMapping("/checkOrg")
public class CheckOrgController extends BaseController {


    @Resource
    CheckOrgService checkOrgService;


    @GetMapping("/list")
    public AjaxResult<List<SysCheckOrgEntity>> list(SysCheckOrgEntity checkOrg){
        startPage();
        List<SysCheckOrgEntity> list = checkOrgService.list(checkOrg);
        return AjaxResult.success(list,new PageInfo<>(list).getTotal());
    }


    @PostMapping("/add")
    public AjaxResult<Void> saveCheckOrg(@RequestBody @Validated SysCheckOrgEntity checkOrg){
        checkOrg.setCreateBy(getUserId());
        checkOrgService.saveCheckOrg(checkOrg);
        return AjaxResult.success();
    }


    @GetMapping("/{id}")
    public AjaxResult<SysCheckOrgEntity> getCheckOrg(@PathVariable Long id){
        return AjaxResult.success(checkOrgService.getCheckOrg(id));
    }


    @PostMapping("/update")
    public AjaxResult<Void> updateCheckOrg(@RequestBody @Validated SysCheckOrgEntity checkOrg){
        checkOrg.setCreateBy(getUserId());
        checkOrgService.updateCheckOrg(checkOrg);
        return AjaxResult.success();
    }

    @DeleteMapping("/{ids}")
    public AjaxResult<Void> deleteCheckOrg(@PathVariable @NotEmpty(message = "请选中需要删除的数据") Long[] ids){
        checkOrgService.deleteCheckOrg(ids);
        return AjaxResult.success();
    }
}
